aboutsummaryrefslogtreecommitdiffstats
path: root/packages/web/app/api/v1/bookmarks/[bookmarkId]
diff options
context:
space:
mode:
authorMohamedBassem <me@mbassem.com>2024-02-11 14:54:52 +0000
committerMohamedBassem <me@mbassem.com>2024-02-11 14:55:09 +0000
commit2c2d05fd0a2c3c26d765f8a6beb88d907a097c1d (patch)
treec4738ba0bc011d60361f89aca9be3293474ab9e9 /packages/web/app/api/v1/bookmarks/[bookmarkId]
parentc2f1d6d8b8a0f09820153fc736806b147d46abfe (diff)
downloadkarakeep-2c2d05fd0a2c3c26d765f8a6beb88d907a097c1d.tar.zst
refactor: Migrating to trpc instead of next's route handers
Diffstat (limited to 'packages/web/app/api/v1/bookmarks/[bookmarkId]')
-rw-r--r--packages/web/app/api/v1/bookmarks/[bookmarkId]/route.ts70
1 files changed, 0 insertions, 70 deletions
diff --git a/packages/web/app/api/v1/bookmarks/[bookmarkId]/route.ts b/packages/web/app/api/v1/bookmarks/[bookmarkId]/route.ts
deleted file mode 100644
index 3e57fa65..00000000
--- a/packages/web/app/api/v1/bookmarks/[bookmarkId]/route.ts
+++ /dev/null
@@ -1,70 +0,0 @@
-import { authOptions } from "@/lib/auth";
-import { deleteBookmark, updateBookmark } from "@/lib/services/bookmarks";
-import {
- ZBookmark,
- zUpdateBookmarksRequestSchema,
-} from "@/lib/types/api/bookmarks";
-import { Prisma } from "@remember/db";
-
-import { getServerSession } from "next-auth";
-import { NextRequest, NextResponse } from "next/server";
-
-export async function PATCH(
- request: NextRequest,
- { params }: { params: { bookmarkId: string } },
-) {
- const session = await getServerSession(authOptions);
- if (!session) {
- return new Response(null, { status: 401 });
- }
-
- const updateJson = await request.json();
- const update = zUpdateBookmarksRequestSchema.safeParse(updateJson);
- if (!update.success) {
- return new Response(null, { status: 400 });
- }
-
- try {
- const bookmark: ZBookmark = await updateBookmark(
- params.bookmarkId,
- session.user.id,
- update.data,
- );
- return NextResponse.json(bookmark);
- } catch (e: unknown) {
- if (
- e instanceof Prisma.PrismaClientKnownRequestError &&
- e.code === "P2025" // RecordNotFound
- ) {
- return new Response(null, { status: 404 });
- } else {
- throw e;
- }
- }
-}
-
-export async function DELETE(
- _request: NextRequest,
- { params }: { params: { bookmarkId: string } },
-) {
- // TODO: We probably should be using an API key here instead of the session;
- const session = await getServerSession(authOptions);
- if (!session) {
- return new Response(null, { status: 401 });
- }
-
- try {
- await deleteBookmark(params.bookmarkId, session.user.id);
- } catch (e: unknown) {
- if (
- e instanceof Prisma.PrismaClientKnownRequestError &&
- e.code === "P2025" // RecordNotFound
- ) {
- return new Response(null, { status: 404 });
- } else {
- throw e;
- }
- }
-
- return new Response(null, { status: 204 });
-}